Transparent Interconnect of Lots of Links (TRILL) is an IETF standard implemented in RBridges. TRILL provides an architecture of Layer 2 control and forwarding that enjoys major benefits such as pair-wise optimal forwarding, loop mitigation, multipathing and provisioning tree. TRILL supports incremental deployment and interoperation with classical Ethernet (CE) through mechanisms such as adjacencies over shared media, designated RBridge (DRB) election and appointed forwarder (AF) assignment. RBridges on a network run a link state protocol such as IS-IS, for example, to broadcast connectivity to other RBridges on the network. Using the link state protocol, the RBridges determine connectivity between the RBridges. For example, the RBridges obtain information needed to calculate pair-wise optimal paths for unicast and/or distribution trees for multicast/broadcast using the link state protocol. However, TRILL has two limitations that affect convergence in CE.
First, spanning tree protocol (STP) convergence and TRILL convergence are sequential. In response to a network topology change, STP is executed to ensure loop-free network topology by electing a root switch (or bridge) and selecting designated and non-designated ports. TRILL depends on an exchange of HELLO frames to elect the DRB and assign the AF. The HELLO frames are treated as normal data in CE and are subject to blocking. Therefore, STP convergence and TRILL convergence are sequential because the HELLO frames are blocked until STP converges. When a network topology change occurs, connectivity is restored only after STP convergence (e.g., root bridge elected and designated and non-designated ports selected) and TRILL convergence (e.g., DRB elected and AF assigned).
Additionally, convergence may be un-deterministic. Because STP convergence and TRILL convergence are not lock-step, there may be multiple AFs in one CE in a transient state following a topology change (e.g., after STP convergence but before TRILL convergence). Having multiple AFs in one CE may lead to looping, which is undesirable. To prevent looping, TRILL takes a heuristic approach and prohibits an AF from forwarding until a root change inhibition timer expires. Referring now to FIG. 1, a timeline illustrating STP and TRILL convergences following a network topology change is shown. For example, the network topology change 101 occurs at time t1. Following the network topology change 101, STP is executed and STP convergence 103 occurs at time t2. Then, TRILL is executed and TRILL convergence 105 occurs at time t3. As discussed above, an AF is prohibited from forwarding until a root change inhibition timer 107 expires. For example, the default root change inhibition timer is 30 seconds. However, if the root change inhibition timer 107 is set too short (i.e., time tx1), looping may not be prevented because TRILL convergence 105 has not yet occurred. On the other hand, if the root change inhibition timer 107 is set too long (i.e., time tx2), looping is prevented but convergence is slow.